<html>
	<head>
		<meta charset="utf-8"></meta>
		<title>BCamera</title>
		<link href="./style.css" rel="stylesheet" type="text/css"/>
	</head>
	<body>
		<div class="class" name="BCamera">
			<h1>BCamera</h1>
			<p>继承自<a href="BNode.html">BNode</a></p>
			<p id="resume"><a href="#desc">详细</a></p>
			<h2>public</h2>
			<table id="public">
				<tr><td align="right"/><td><a href="#BCamera(const BString&)">BCamera</a>(const BString& name = BString());</td></tr>
				<tr><td align="right"/><td><a href="#~BCamera()">~BCamera</a>();</td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#setMatrix(const BMatrix&)">setMatrix</a>(const BMatrix& matrix);</td></tr>
				<tr><td align="right">void </td><td><a href="#setCenter(BReal, BReal, BReal)">setCenter</a>(BReal x, BReal y, BReal z);</td></tr>
				<tr><td align="right">void </td><td><a href="#setCenter(const BVector&)">setCenter</a>(const BVector& center);</td></tr>
				<tr><td align="right">const BVector&amp; </td><td><a href="#center() const">center</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setUp(BReal, BReal, BReal)">setUp</a>(BReal x, BReal y, BReal z);</td></tr>
				<tr><td align="right">void </td><td><a href="#setUp(const BVector&)">setUp</a>(const BVector& up);</td></tr>
				<tr><td align="right">const BVector&amp; </td><td><a href="#up() const">up</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setOrtho(bool)">setOrtho</a>(bool ortho);</td></tr>
				<tr><td align="right">bool </td><td><a href="#ortho() const">ortho</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setFovy(BReal)">setFovy</a>(BReal fovy);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#fovy() const">fovy</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setNear(BReal)">setNear</a>(BReal near);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#near() const">near</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setFar(BReal)">setFar</a>(BReal far);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#far() const">far</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setSamples(int)">setSamples</a>(int samples);</td></tr>
				<tr><td align="right">int </td><td><a href="#samples() const">samples</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setLensWidth(BReal)">setLensWidth</a>(BReal lensWidth);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#lensWidth() const">lensWidth</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setLensHeight(BReal)">setLensHeight</a>(BReal lensHeight);</td></tr>
				<tr><td align="right">BReal </td><td><a href="#lensHeight() const">lensHeight</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setPixelWidth(int)">setPixelWidth</a>(int pixelWidth);</td></tr>
				<tr><td align="right">int </td><td><a href="#pixelWidth() const">pixelWidth</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setPixelHeight(int)">setPixelHeight</a>(int pixelHeight);</td></tr>
				<tr><td align="right">int </td><td><a href="#pixelHeight() const">pixelHeight</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setPixelSize(int, int)">setPixelSize</a>(int pixelWidth, int pixelHeight);</td></tr>
				<tr><td align="right">void </td><td><a href="#setPixelSize(const BSize&)">setPixelSize</a>(const BSize& pixelSize);</td></tr>
				<tr><td align="right">const BSize&amp; </td><td><a href="#pixelSize() const">pixelSize</a>() const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setPixelSizePolicy(Policy)">setPixelSizePolicy</a>(Policy sizePolicy);</td></tr>
				<tr><td align="right">Policy </td><td><a href="#pixelSizePolicy() const">pixelSizePolicy</a>() const;</td></tr>
				<tr><td align="right">BReal </td><td><a href="#unit(BReal) const">unit</a>(BReal dist) const;</td></tr>
				<tr><td align="right">BReal </td><td><a href="#unit(const BVector&) const">unit</a>(const BVector& vertex) const;</td></tr>
				<tr><td align="right">BVector </td><td><a href="#lensVertex(const BVector&) const">lensVertex</a>(const BVector& vertex) const;</td></tr>
				<tr><td align="right">BPoint </td><td><a href="#pixelPoint(const BVector&) const">pixelPoint</a>(const BVector& vertex) const;</td></tr>
				<tr><td align="right">void </td><td><a href="#setColor(BByte, BByte, BByte,BByte)">setColor</a>(BByte r, BByte g, BByte b, BByte a = 255);</td></tr>
				<tr><td align="right">void </td><td><a href="#setColor(const BColor&)">setColor</a>(const BColor& color);</td></tr>
				<tr><td align="right">const BColor&amp; </td><td><a href="#color() const">color</a>() const;</td></tr>
				<tr><td align="right">const BFrustum&amp; </td><td><a href="#frustum() const">frustum</a>() const;</td></tr>
				<tr><td align="right">const BVector&amp; </td><td><a href="#direct() const">direct</a>() const;</td></tr>
				<tr><td align="right">const BVector&amp; </td><td><a href="#right() const">right</a>() const;</td></tr>
				<tr><td align="right">bool </td><td><a href="#capture(BImage*)">capture</a>(BImage* image);</td></tr>
				<tr><td align="right">bool </td><td><a href="#capture(BImage*, const BRect&)">capture</a>(BImage* image, const BRect& rect);</td></tr>
				<tr><td align="right">virtual void </td><td><a href="#fresh()">fresh</a>();</td></tr>
				<tr><td align="right">virtual BBox </td><td><a href="#flush() const">flush</a>() const;</td></tr>
				<tr><td align="right">using </td><td><a href="#BObject::query;()">BObject::query;</a></td></tr>
				<tr><td align="right">virtual bool </td><td><a href="#query(const BString&, BValue&) const">query</a>(const BString& text, BValue& value) const;</td></tr>
			</table>
			<div id="desc">
				<h2>详细介绍：</h2>
				<p>BCamera is a special node contains data to define how the viewer display the scene.</p>
				<p>Camera has frame buffer, fresh() dirty the camera then each viewer which using this camera will be freshed.</p>
				<h4>Signals:</h4><table>
					<tr><td/><td/></tr>
					<tr><td/><td/></tr></table>
				<p><a href="BViewer.html">BViewer</a><a href="BScene.html">BScene</a>See also : </p>
			</div>
			<h2 id="docs">成员文档：</h2>
			<div id="BCamera(const BString&)">
				<h3>BCamera(const BString&amp; name = BString());</h3>
				<p>Constructs camera with the name.</p>
			</div>
			<div id="~BCamera()">
				<h3>~BCamera();</h3>
				<p/>
				<p>Destroys the camera.</p>
			</div>
			<div id="setMatrix(const BMatrix&)">
				<h3>virtual bool setMatrix(const BMatrix&amp; matrix);</h3>
			</div>
			<div id="setCenter(BReal, BReal, BReal)">
				<h3>void setCenter(BReal x, BReal y, BReal z);</h3>
			</div>
			<div id="setCenter(const BVector&)">
				<h3>void setCenter(const BVector&amp; center);</h3>
				<p>Center is focus point of camera, camera will rotate around it and move front or back to it.</p>
			</div>
			<div id="center() const">
				<h3>const BVector&amp; center() const;</h3>
				<p>Get focus point of camera.</p>
			</div>
			<div id="setUp(BReal, BReal, BReal)">
				<h3>void setUp(BReal x, BReal y, BReal z);</h3>
			</div>
			<div id="setUp(const BVector&)">
				<h3>void setUp(const BVector&amp; up);</h3>
				<p>Set camera up direction vector, which define rotate axis of camera.</p>
			</div>
			<div id="up() const">
				<h3>const BVector&amp; up() const;</h3>
				<p>Get camera up direction vector.</p>
			</div>
			<div id="setOrtho(bool)">
				<h3>void setOrtho(bool ortho);</h3>
				<p>If ortho is true, this is a ortho camera which's near face has same size as the far face, and fovy is unused.If ortho is false, this is a projective camera, and fovy is used.</p>
			</div>
			<div id="ortho() const">
				<h3>bool ortho() const;</h3>
			</div>
			<div id="setFovy(BReal)">
				<h3>void setFovy(BReal fovy);</h3>
			</div>
			<div id="fovy() const">
				<h3>BReal fovy() const;</h3>
				<p>Get the angle value of view.</p>
			</div>
			<div id="setNear(BReal)">
				<h3>void setNear(BReal near);</h3>
			</div>
			<div id="near() const">
				<h3>BReal near() const;</h3>
			</div>
			<div id="setFar(BReal)">
				<h3>void setFar(BReal far);</h3>
			</div>
			<div id="far() const">
				<h3>BReal far() const;</h3>
			</div>
			<div id="setSamples(int)">
				<h3>void setSamples(int samples);</h3>
			</div>
			<div id="samples() const">
				<h3>int samples() const;</h3>
			</div>
			<div id="setLensWidth(BReal)">
				<h3>void setLensWidth(BReal lensWidth);</h3>
			</div>
			<div id="lensWidth() const">
				<h3>BReal lensWidth() const;</h3>
			</div>
			<div id="setLensHeight(BReal)">
				<h3>void setLensHeight(BReal lensHeight);</h3>
			</div>
			<div id="lensHeight() const">
				<h3>BReal lensHeight() const;</h3>
			</div>
			<div id="setPixelWidth(int)">
				<h3>void setPixelWidth(int pixelWidth);</h3>
			</div>
			<div id="pixelWidth() const">
				<h3>int pixelWidth() const;</h3>
			</div>
			<div id="setPixelHeight(int)">
				<h3>void setPixelHeight(int pixelHeight);</h3>
			</div>
			<div id="pixelHeight() const">
				<h3>int pixelHeight() const;</h3>
			</div>
			<div id="setPixelSize(int, int)">
				<h3>void setPixelSize(int pixelWidth, int pixelHeight);</h3>
			</div>
			<div id="setPixelSize(const BSize&)">
				<h3>void setPixelSize(const BSize&amp; pixelSize);</h3>
			</div>
			<div id="pixelSize() const">
				<h3>const BSize&amp; pixelSize() const;</h3>
			</div>
			<div id="setPixelSizePolicy(Policy)">
				<h3>void setPixelSizePolicy(Policy sizePolicy);</h3>
			</div>
			<div id="pixelSizePolicy() const">
				<h3>Policy pixelSizePolicy() const;</h3>
			</div>
			<div id="unit(BReal) const">
				<h3>BReal unit(BReal dist) const;</h3>
			</div>
			<div id="unit(const BVector&) const">
				<h3>BReal unit(const BVector&amp; vertex) const;</h3>
			</div>
			<div id="lensVertex(const BVector&) const">
				<h3>BVector lensVertex(const BVector&amp; vertex) const;</h3>
			</div>
			<div id="pixelPoint(const BVector&) const">
				<h3>BPoint pixelPoint(const BVector&amp; vertex) const;</h3>
			</div>
			<div id="setColor(BByte, BByte, BByte,BByte)">
				<h3>void setColor(BByte r, BByte g, BByte b, BByte a = 255);</h3>
			</div>
			<div id="setColor(const BColor&)">
				<h3>void setColor(const BColor&amp; color);</h3>
				<p>This color means the clear color of camera.</p>
			</div>
			<div id="color() const">
				<h3>const BColor&amp; color() const;</h3>
				<p>Get the clear color of camera.</p>
			</div>
			<div id="frustum() const">
				<h3>const BFrustum&amp; frustum() const;</h3>
			</div>
			<div id="direct() const">
				<h3>const BVector&amp; direct() const;</h3>
			</div>
			<div id="right() const">
				<h3>const BVector&amp; right() const;</h3>
			</div>
			<div id="capture(BImage*)">
				<h3>bool capture(BImage* image);</h3>
			</div>
			<div id="capture(BImage*, const BRect&)">
				<h3>bool capture(BImage* image, const BRect&amp; rect);</h3>
			</div>
			<div id="fresh()">
				<h3>virtual void fresh();</h3>
				<p>Sign this camera is dirty, each viewer which has this camera as current will be freshed, each scene which contains tis camera will be freshed.</p>
			</div>
			<div id="flush() const">
				<h3>virtual BBox flush() const;</h3>
			</div>
			<div id="BObject::query;()">
				<h3>using BObject::query;</h3>
			</div>
			<div id="query(const BString&, BValue&) const">
				<h3>virtual bool query(const BString&amp; text, BValue&amp; value) const;</h3>
			</div>
		</div>
	</body>
</html>